package net.wofly.sale.order.flow;

import java.util.List;
import java.util.Map;

import net.wofly.framework.util.ReturnBean;
import net.wofly.sale.order.domain.Order;

public interface IOrderFlowService {
	
	public ReturnBean<String> startWorkflow(String userID, String orderID ,String orderStatus ,Map<String, Object> variables) ;
	
	public List<Order> findToDoList(String userID) ;
	
	public ReturnBean<String> complete(String userID ,String taskID ,String comment, Map<String, String[]> mapRequest) ;
	
	public ReturnBean<Order> getOrderForFlow(String orderID) ;
	
	public Order getOrderForFlow(Order order) ;
	
	/**
	 * 签收任务
	 * 
	 * @param userID
	 * @param taskID
	 * @return
	 */
	public ReturnBean<String> claimTask(String userID ,String taskID) ;
	
	/**
	 * 反签收任务
	 * 
	 * @param userID
	 * @param taskID
	 * @return
	 */
	public ReturnBean<String> unclaimTask(String userID ,String taskID) ;

}
